﻿namespace DbManager.QueryBuilder.DbEntity.Group
{
    public class EntityGroup : AEntityGroup
    {
        public override string GetSelectQuery()
        {
            return
                "SELECT [Идентификатор] AS Ид, [Фамилия], [Имя], [Отчество], [Ребенок] FROM [Группа] WHERE [Идентификатор группы]=" +
                IDGroup;
        }

        public override string GetInsertQuery()
        {
            if (string.IsNullOrEmpty(Surname) ||
                string.IsNullOrEmpty(Name) ||
                string.IsNullOrEmpty(FatherName) ||
                IDGroup == 0)
            {
                return string.Empty;
            }

            return "INSERT INTO [Группа] ([Идентификатор группы], [Фамилия], [Имя], [Отчество], [Ребенок]) VALUES (" +
                   IDGroup + ", '" + Surname + "', '" + Name + "', '" + FatherName + "', " + IsChild + ")";
        }

        public override string GetUpdateQuery()
        {
            if (string.IsNullOrEmpty(Surname) ||
                string.IsNullOrEmpty(Name) ||
                string.IsNullOrEmpty(FatherName) ||
                IDGroup == 0 ||
                ID == 0)
            {
                return string.Empty;
            }
            return "UPDATE Группа SET [Идентификатор группы] = "+IDGroup+", Фамилия = '"+Surname+"', Имя ='"+Name+"', Отчество ='"+FatherName+"', Ребенок = "+IsChild+" WHERE (Группа.Идентификатор = "+ID+")";
        }

        public override string GetDeleteQuery()
        {
            if (IDGroup == 0) return string.Empty;
            return "DELETE FROM [Группа] WHERE [Идентификатор группы]=" + IDGroup;
        }
    }
}